/* Class39_Sub5_Sub10 - Decompiled by JODE
 * Visit http://jode.sourceforge.net/
 */

public class Class39_Sub5_Sub10 extends Class39_Sub5 {
	public static int[] anIntArray1818;
	public static int anInt1819;
	public static int anInt1820 = 0;
	public static int anInt1821;
	public static int anInt1822;
	public static int anInt1823 = 0;
	public static int anInt1824;

	public static void method609(int i, int i_0_, int i_1_, int i_2_) {
		if (i >= anInt1824 && i < anInt1823) {
			if (i_0_ < anInt1820) {
				i_1_ -= anInt1820 - i_0_;
				i_0_ = anInt1820;
			}
			if (i_0_ + i_1_ > anInt1819)
				i_1_ = anInt1819 - i_0_;
			int i_3_ = i + i_0_ * anInt1821;
			for (int i_4_ = 0; i_4_ < i_1_; i_4_++)
				anIntArray1818[i_3_ + i_4_ * anInt1821] = i_2_;
		}
	}

	public static void method610(int[] is, int i, int i_5_) {
		anIntArray1818 = is;
		anInt1821 = i;
		anInt1822 = i_5_;
		method619(0, 0, i, i_5_);
	}

	public static void method611(int i, int i_6_, int i_7_, int i_8_, int i_9_) {
		if (i < anInt1824) {
			i_7_ -= anInt1824 - i;
			i = anInt1824;
		}
		if (i_6_ < anInt1820) {
			i_8_ -= anInt1820 - i_6_;
			i_6_ = anInt1820;
		}
		if (i + i_7_ > anInt1823)
			i_7_ = anInt1823 - i;
		if (i_6_ + i_8_ > anInt1819)
			i_8_ = anInt1819 - i_6_;
		int i_10_ = anInt1821 - i_7_;
		int i_11_ = i + i_6_ * anInt1821;
		for (int i_12_ = -i_8_; i_12_ < 0; i_12_++) {
			for (int i_13_ = -i_7_; i_13_ < 0; i_13_++)
				anIntArray1818[i_11_++] = i_9_;
			i_11_ += i_10_;
		}
	}

	public static void method612(int i, int i_14_, int i_15_, int i_16_, int i_17_) {
		i_15_ -= i;
		i_16_ -= i_14_;
		if (i_16_ == 0) {
			if (i_15_ >= 0)
				method616(i, i_14_, i_15_ + 1, i_17_);
			else
				method616(i + i_15_, i_14_, -i_15_ + 1, i_17_);
		} else if (i_15_ == 0) {
			if (i_16_ >= 0)
				method609(i, i_14_, i_16_ + 1, i_17_);
			else
				method609(i, i_14_ + i_16_, -i_16_ + 1, i_17_);
		} else {
			if (i_15_ + i_16_ < 0) {
				i += i_15_;
				i_15_ = -i_15_;
				i_14_ += i_16_;
				i_16_ = -i_16_;
			}
			if (i_15_ > i_16_) {
				i_14_ <<= 16;
				i_14_ += 32768;
				i_16_ <<= 16;
				int i_18_ = (int) Math.floor((double) i_16_ / (double) i_15_ + 0.5);
				i_15_ += i;
				if (i < anInt1824) {
					i_14_ += i_18_ * (anInt1824 - i);
					i = anInt1824;
				}
				if (i_15_ >= anInt1823)
					i_15_ = anInt1823 - 1;
				for (/**/; i <= i_15_; i++) {
					int i_19_ = i_14_ >> 16;
					if (i_19_ >= anInt1820 && i_19_ < anInt1819)
						anIntArray1818[i + i_19_ * anInt1821] = i_17_;
					i_14_ += i_18_;
				}
			} else {
				i <<= 16;
				i += 32768;
				i_15_ <<= 16;
				int i_20_ = (int) Math.floor((double) i_15_ / (double) i_16_ + 0.5);
				i_16_ += i_14_;
				if (i_14_ < anInt1820) {
					i += i_20_ * (anInt1820 - i_14_);
					i_14_ = anInt1820;
				}
				if (i_16_ >= anInt1819)
					i_16_ = anInt1819 - 1;
				for (/**/; i_14_ <= i_16_; i_14_++) {
					int i_21_ = i >> 16;
					if (i_21_ >= anInt1824 && i_21_ < anInt1823)
						anIntArray1818[i_21_ + i_14_ * anInt1821] = i_17_;
					i += i_20_;
				}
			}
		}
	}

	public static void method613() {
		anIntArray1818 = null;
	}

	public static void method614(int i, int i_22_, int i_23_, int i_24_, int i_25_) {
		method616(i, i_22_, i_23_, i_25_);
		method616(i, i_22_ + i_24_ - 1, i_23_, i_25_);
		method609(i, i_22_, i_24_, i_25_);
		method609(i + i_23_ - 1, i_22_, i_24_, i_25_);
	}

	public static void method615() {
		anInt1824 = 0;
		anInt1820 = 0;
		anInt1823 = anInt1821;
		anInt1819 = anInt1822;
	}

	public static void method616(int i, int i_26_, int i_27_, int i_28_) {
		if (i_26_ >= anInt1820 && i_26_ < anInt1819) {
			if (i < anInt1824) {
				i_27_ -= anInt1824 - i;
				i = anInt1824;
			}
			if (i + i_27_ > anInt1823)
				i_27_ = anInt1823 - i;
			int i_29_ = i + i_26_ * anInt1821;
			for (int i_30_ = 0; i_30_ < i_27_; i_30_++)
				anIntArray1818[i_29_ + i_30_] = i_28_;
		}
	}

	public static void method617(int i, int i_31_, int i_32_, int i_33_, int i_34_) {
		if (i_31_ >= anInt1820 && i_31_ < anInt1819) {
			if (i < anInt1824) {
				i_32_ -= anInt1824 - i;
				i = anInt1824;
			}
			if (i + i_32_ > anInt1823)
				i_32_ = anInt1823 - i;
			int i_35_ = 256 - i_34_;
			int i_36_ = (i_33_ >> 16 & 0xff) * i_34_;
			int i_37_ = (i_33_ >> 8 & 0xff) * i_34_;
			int i_38_ = (i_33_ & 0xff) * i_34_;
			int i_39_ = i + i_31_ * anInt1821;
			for (int i_40_ = 0; i_40_ < i_32_; i_40_++) {
				int i_41_ = (anIntArray1818[i_39_] >> 16 & 0xff) * i_35_;
				int i_42_ = (anIntArray1818[i_39_] >> 8 & 0xff) * i_35_;
				int i_43_ = (anIntArray1818[i_39_] & 0xff) * i_35_;
				int i_44_ = ((i_36_ + i_41_ >> 8 << 16) + (i_37_ + i_42_ >> 8 << 8) + (i_38_ + i_43_ >> 8));
				anIntArray1818[i_39_++] = i_44_;
			}
		}
	}

	public static void method618(int i, int i_45_, int i_46_, int i_47_, int i_48_) {
		if (i >= anInt1824 && i < anInt1823) {
			if (i_45_ < anInt1820) {
				i_46_ -= anInt1820 - i_45_;
				i_45_ = anInt1820;
			}
			if (i_45_ + i_46_ > anInt1819)
				i_46_ = anInt1819 - i_45_;
			int i_49_ = 256 - i_48_;
			int i_50_ = (i_47_ >> 16 & 0xff) * i_48_;
			int i_51_ = (i_47_ >> 8 & 0xff) * i_48_;
			int i_52_ = (i_47_ & 0xff) * i_48_;
			int i_53_ = i + i_45_ * anInt1821;
			for (int i_54_ = 0; i_54_ < i_46_; i_54_++) {
				int i_55_ = (anIntArray1818[i_53_] >> 16 & 0xff) * i_49_;
				int i_56_ = (anIntArray1818[i_53_] >> 8 & 0xff) * i_49_;
				int i_57_ = (anIntArray1818[i_53_] & 0xff) * i_49_;
				int i_58_ = ((i_50_ + i_55_ >> 8 << 16) + (i_51_ + i_56_ >> 8 << 8) + (i_52_ + i_57_ >> 8));
				anIntArray1818[i_53_] = i_58_;
				i_53_ += anInt1821;
			}
		}
	}

	public static void method619(int i, int i_59_, int i_60_, int i_61_) {
		if (i < 0)
			i = 0;
		if (i_59_ < 0)
			i_59_ = 0;
		if (i_60_ > anInt1821)
			i_60_ = anInt1821;
		if (i_61_ > anInt1822)
			i_61_ = anInt1822;
		anInt1824 = i;
		anInt1820 = i_59_;
		anInt1823 = i_60_;
		anInt1819 = i_61_;
	}

	public static void method620(int i, int i_62_, int i_63_, int i_64_, int i_65_, int i_66_) {
		method617(i, i_62_, i_63_, i_65_, i_66_);
		method617(i, i_62_ + i_64_ - 1, i_63_, i_65_, i_66_);
		if (i_64_ >= 3) {
			method618(i, i_62_ + 1, i_64_ - 2, i_65_, i_66_);
			method618(i + i_63_ - 1, i_62_ + 1, i_64_ - 2, i_65_, i_66_);
		}
	}

	public static void method621(int[] is) {
		anInt1824 = is[0];
		anInt1820 = is[1];
		anInt1823 = is[2];
		anInt1819 = is[3];
	}

	public static void method622() {
		int i = 0;
		int i_67_ = anInt1821 * anInt1822 - 7;
		while (i < i_67_) {
			anIntArray1818[i++] = 0;
			anIntArray1818[i++] = 0;
			anIntArray1818[i++] = 0;
			anIntArray1818[i++] = 0;
			anIntArray1818[i++] = 0;
			anIntArray1818[i++] = 0;
			anIntArray1818[i++] = 0;
			anIntArray1818[i++] = 0;
		}
		i_67_ += 7;
		while (i < i_67_)
			anIntArray1818[i++] = 0;
	}

	public static void method623(int[] is) {
		is[0] = anInt1824;
		is[1] = anInt1820;
		is[2] = anInt1823;
		is[3] = anInt1819;
	}

	public static void method624(int i, int i_68_, int i_69_, int i_70_, int i_71_, int i_72_) {
		if (i < anInt1824) {
			i_69_ -= anInt1824 - i;
			i = anInt1824;
		}
		if (i_68_ < anInt1820) {
			i_70_ -= anInt1820 - i_68_;
			i_68_ = anInt1820;
		}
		if (i + i_69_ > anInt1823)
			i_69_ = anInt1823 - i;
		if (i_68_ + i_70_ > anInt1819)
			i_70_ = anInt1819 - i_68_;
		int i_73_ = 256 - i_72_;
		int i_74_ = (i_71_ >> 16 & 0xff) * i_72_;
		int i_75_ = (i_71_ >> 8 & 0xff) * i_72_;
		int i_76_ = (i_71_ & 0xff) * i_72_;
		int i_77_ = anInt1821 - i_69_;
		int i_78_ = i + i_68_ * anInt1821;
		for (int i_79_ = 0; i_79_ < i_70_; i_79_++) {
			for (int i_80_ = -i_69_; i_80_ < 0; i_80_++) {
				int i_81_ = (anIntArray1818[i_78_] >> 16 & 0xff) * i_73_;
				int i_82_ = (anIntArray1818[i_78_] >> 8 & 0xff) * i_73_;
				int i_83_ = (anIntArray1818[i_78_] & 0xff) * i_73_;
				int i_84_ = ((i_74_ + i_81_ >> 8 << 16) + (i_75_ + i_82_ >> 8 << 8) + (i_76_ + i_83_ >> 8));
				anIntArray1818[i_78_++] = i_84_;
			}
			i_78_ += i_77_;
		}
	}

	static {
		anInt1819 = 0;
		anInt1824 = 0;
	}
}
